package com.teamall.web.family.db.dao.mapper;

import com.teamall.web.family.db.arg.ProjectFamilyRelatedArg;
import com.teamall.web.family.db.po.ProjectFamilyRelatedPO;

import java.math.*;
import java.util.*;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

public interface IProjectFamilyRelatedMapper {
    
    List<Integer> countByArg(ProjectFamilyRelatedArg arg);

    List<ProjectFamilyRelatedPO> selectByArg(ProjectFamilyRelatedArg arg);

    ProjectFamilyRelatedPO selectByPrimaryKey(Integer id);

    List<ProjectFamilyRelatedPO> selectByArgAndPage(ProjectFamilyRelatedArg arg, RowBounds rowBound);

    int insert(ProjectFamilyRelatedPO record);

    int insertSelective(ProjectFamilyRelatedPO record);

    int insertBatch(@Param("list") List<ProjectFamilyRelatedPO> records);

    int updateByArgSelective(@Param("record") ProjectFamilyRelatedPO record,
            @Param("arg") ProjectFamilyRelatedArg arg);

    int updateByArg(@Param("record") ProjectFamilyRelatedPO record,
            @Param("arg") ProjectFamilyRelatedArg arg);

    int updateByPrimaryKeySelective(ProjectFamilyRelatedPO record);

    int updateByPrimaryKey(ProjectFamilyRelatedPO record);
    
    int deleteByArg(ProjectFamilyRelatedArg arg);
    
    int deleteByPrimaryKey(Integer id);
    
}